Fix tool search to support substring matching in name and ID #27
Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
Description
The
search_tools_by_name()function was usinggi.tools.get_tools(name=query), which doesn't support substring matching in the Galaxy/bioblend API. This resulted in tools not being found even when they existed in the instance. For example, searching for "celltypist" would return 0 results even though tools likecelltypist_predictexist.This PR changes the implementation to fetch all tools and filter client-side for substring matches in both tool name and ID with case-insensitive matching, matching the behavior already used in
search_tools_by_keywords().Type of Change
Checklist
Related Issues
Closes #
Testing
Verified manually against a production Galaxy instance that celltypist tools are now found when searching for "celltypist", whereas previously they returned 0 results.